testsuite: Add a test for transforms in builder files
authorMatthias Clasen <mclasen@redhat.com>
Tue, 31 Mar 2020 19:59:23 +0000 (15:59 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 31 Mar 2020 20:49:51 +0000 (16:49 -0400)
testsuite/gtk/builder.c

index 1c0fe7af3fc2214f6840baea2767a38c94bb6aa5..db6476e186425a8beaada05f5cd0ad66303dcff1 100644 (file)
@@ -2455,6 +2455,45 @@ test_shortcuts (void)
   g_object_unref (builder);
 }
 
+static void
+test_transforms (void)
+{
+  GtkBuilder * builder;
+  const gchar buffer1[] =
+    "<interface>"
+    "  <object class=\"GtkFixed\" id=\"fixed1\">"
+    "    <child>"
+    "      <object class=\"GtkLabel\" id=\"label1\">"
+    "        <layout>"
+    "          <property name=\"transform\">rotateX(45.0)</property>"
+    "        </layout>"
+    "      </object>"
+    "    </child>"
+    "    <child>"
+    "      <object class=\"GtkLabel\" id=\"label2\">"
+    "        <layout>"
+    "          <property name=\"transform\">scale3d(1,2,3)translate3d(2,3,0)</property>"
+    "        </layout>"
+    "      </object>"
+    "    </child>"
+    "  </object>"
+    "</interface>";
+
+  GObject *label, *vbox;
+
+  builder = builder_new_from_string (buffer1, -1, NULL);
+  vbox = gtk_builder_get_object (builder, "fixed1");
+  g_assert (GTK_IS_FIXED (vbox));
+
+  label = gtk_builder_get_object (builder, "label1");
+  g_assert (GTK_IS_LABEL (label));
+
+  label = gtk_builder_get_object (builder, "label2");
+  g_assert (GTK_IS_LABEL (label));
+
+  g_object_unref (builder);
+}
+
 int
 main (int argc, char **argv)
 {
@@ -2500,6 +2539,7 @@ main (int argc, char **argv)
   g_test_add_func ("/Builder/anaconda-signal", test_anaconda_signal);
   g_test_add_func ("/Builder/FileFilter", test_file_filter);
   g_test_add_func ("/Builder/Shortcuts", test_shortcuts);
+  g_test_add_func ("/Builder/Transforms", test_transforms);
 
   return g_test_run();
 }